package com.zhiyou100.loans.listener;

import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

import com.zhiyou100.loans.util.NetDate;

public class MyListener implements ServletContextListener{
	
	//当程序初始化的时候，选择启动定时器
	@Override
	public void contextInitialized(ServletContextEvent sce) {
		//每天8:00定时处理借款信息是否失效。
		//每月10号23:59:59处理还款信息。
		//每月11号10:00，出借人收益处理。
		Timer timer = new Timer();
		Calendar cal = Calendar.getInstance();
		cal.set(Calendar.HOUR_OF_DAY, 8);
		cal.set(Calendar.MINUTE, 0);
		cal.set(Calendar.SECOND, 0);
		Date time1 = cal.getTime();
		timer.scheduleAtFixedRate(new TimerTask() {
			@Override
			public void run() {
				//设置一个当前日期下8点的日期，successstate=0，把messagestate改为0
				
			}
		}, time1, 1000*60*60*24);
		
		
		Timer timer2 = new Timer();
		cal.set(Calendar.HOUR_OF_DAY, 23);
		cal.set(Calendar.MINUTE, 59);
		cal.set(Calendar.SECOND, 59);
		Date time2 = cal.getTime();
		timer.scheduleAtFixedRate(new TimerTask() {
			@Override
			public void run() {
				//获取网络时间，查看是不是10号
				cal.setTime(NetDate.getCurrentTime());
				if(cal.get(Calendar.DAY_OF_MONTH)==10){
					//设置一个10号的23:59:59秒的时间，realtime=null,修改是否逾期的状态
					
				}
			}
		}, time2, 1000*60*60*24);
		
		Timer timer3 = new Timer();
		cal.set(Calendar.HOUR_OF_DAY, 10);
		cal.set(Calendar.MINUTE, 0);
		cal.set(Calendar.SECOND, 0);
		Date time3 = cal.getTime();
		timer.scheduleAtFixedRate(new TimerTask() {
			@Override
			public void run() {
				//获取网络时间，查看是不是10号
				cal.setTime(NetDate.getCurrentTime());
				if(cal.get(Calendar.DAY_OF_MONTH)==11){
					//设置一个11号的10:00的时间，根据出借成功的信息，在收益表中增加出借人的收益。
					
				}
			}
		}, time3, 1000*60*60*24);
		
		
	}
}
